package file

import (
	"os"
	"path/filepath"
)

// GetFilePointer 获取文件指针
func GetFilePointer(logPath string, prjHome string) (file *os.File, err error) {
	//判断是否为相对路径
	if !filepath.IsAbs(logPath) {
		logPath = prjHome + logPath
	}

	//判断目录是否存在，不存在时创建
	dir := filepath.Dir(logPath)
	if _, err = os.Stat(dir); os.IsNotExist(err) {
		err = os.MkdirAll(dir, 0755)
		if err != nil {
			panic(err)
		}
	}

	//打开文件
	return os.OpenFile(logPath, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644)
}
